package com.settlement.system.model.entity.common;

import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.HeadFontStyle;
import com.alibaba.excel.annotation.write.style.HeadRowHeight;
import com.alibaba.excel.annotation.write.style.HeadStyle;
import io.swagger.annotations.ApiModelProperty;
import jakarta.validation.constraints.NotNull;
import lombok.Data;

import java.io.Serializable;

/**
 * 损失原因/责任方/单据状态对应表
 * @author xiaochuan
 * @since 2020-06-11
 */
@Data
@ExcelIgnoreUnannotated
@HeadStyle(fillBackgroundColor = 9,fillForegroundColor = 9)
@HeadRowHeight(value = 20)
@HeadFontStyle(fontHeightInPoints = 14)
public class TblBillResponsibleReason extends BaseModel implements Serializable {


    /**
     * 单据状态编码
     */
    @ExcelProperty(value = "退款稽核单据状态编码")
    private String billStatusNo;

    /**
     * 单据状态编码
     */
    @ExcelProperty(index = 0,value = "退款稽核单据状态名称")
    @NotNull(message = "退款稽核单据状态不能为空")
    private String billStatusName;

    /**
     * 责任方编码
     */
    @ExcelProperty(value = "责任方编码")
    private String responsibleNo;

    /**
     * 责任方
     */
    @ExcelProperty(index = 1,value = "责任方")
    @NotNull(message = "责任方不能为空")
    private String responsibleName;

    /**
     * 损失原因编码
     */
    @ExcelProperty(value = "损失原因编码")
    private String lossReasonNo;

    /**
     * 损失原因
     */
    @ExcelProperty(index = 2,value = "损失原因")
    @NotNull(message = "损失原因不能为空")
    private String lossReasonName;

    /**
     * 解释说明
     */
    @ExcelProperty(index = 3,value = "解释说明")
    private String remark;

    /**
     * 损失原因细则名称
     */
    @ExcelProperty(value = "损失原因细则名称")
    @ApiModelProperty(value = "损失原因细则名称")
    private String lossReasonDtlName;

    /**
     * 损失原因细则编码
     */
    private String lossReasonDtlNo;

    /**
     * 订单稽核单据状态编码
     */
    @ExcelProperty(value = "订单稽核单据状态编码")
    private String orderBillStatusNo;


    /**
     *  订单稽核单据状态名称
     */
    @ExcelProperty(index = 4,value = "订单稽核单据状态名称")
    @NotNull(message = "订单稽核单据状态名称")
    private String orderBillStatusName;

}
